This invention relates to vision systems and, more particularly, to a novel system and methods for extracting a 3D model of an object present in a plurality of views, from at least one camera, and describable by geometric polyhedrons subject to constrained nonlinear optimization.
It has been the objective of considerable work in the art to develop and implement a complete system with which a human user can reconstruct the 3-dimensional geometry of a scene from images. Emphasis has been placed on the development of a practical, robust interactive system in which the operator guides the object selection process and the system computer provides an optimal numerical result. Although there are many factors (e.g. surface reflectance, texture, lighting and the like) that determine how a scene will appear in an image, the most directly exploitable factor is the projective geometric relationship between scene points and image points. It is highly desirable to allow the human operator to perform the high level perceptual functions of surmising the general layout of the scene and designating the locations of scene features, functions for which a human is extremely adept, and have the computer provide the optimization to recover the scene geometry of maximum likelihood. Measurements made by the human operator are considered to be noisy observations, as image resolution will limit the accuracy to which image measurements can be made. The projective relationship is described by the equations of the camera model. The recovery of camera model parameters (camera positions, orientations, and focal lengths) will necessarily be part of the process of reconstructing the scene, as this information is normally unavailable or unreliable a priori.
Besides image measurements, the other primary means of reconstructing scene geometry will be through the specification of model geometric constraints. Common constraints arising in man-made structures are perpendicularity and parallelism. Constraints due to the polygonal mesh scheme used to model surfaces must also be taken into consideration in the solution process. It is also desirable to include a provision for constraints, to provide a means for solving what otherwise would be an underspecified problem, due to insufficient information visible in the images. Also, constraints are a means for allowing a human operator to use the system by exercising control over the models generated by the system. The system must be established (`programmed`) to guard against constraint-conflict problems, especially with a human operator in the loop.